home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / VPAL10.ZIP / VPALDEMO.PAS < prev    next >
Pascal/Delphi Source File  |  1993-04-01  |  3KB  |  129 lines

  1. Program VpalDemo;
  2.  
  3. Uses
  4.   Dos, Crt, Graph, VGAPal70;
  5.   {Replace 'VGAPal70' with 'VGAPal60' for Turbo Pascal 6.0 }
  6.  
  7. Var
  8.   AutoDetectPointer : Pointer;
  9.   BPointer          : Pointer;
  10.   GraphDriver, Mode : Integer;
  11.   ErrorCode         : Integer;
  12.   X,Y               : Integer;
  13.   Size              : Word;
  14.  
  15. {$F+}
  16. Function DetectVGA256 : integer;
  17. var
  18.   DetectedDriver : integer;
  19.   SuggestedMode  : integer;
  20. begin
  21.   DetectGraph(DetectedDriver, SuggestedMode);
  22.   if (DetectedDriver = VGA) or (DetectedDriver = MCGA) then
  23.     DetectVGA256 := 0
  24.   else
  25.     DetectVGA256 := grError;
  26. end;
  27. {$F-}
  28.  
  29. Begin
  30.   ClrScr;
  31.   DirectVideo := false;
  32.   AutoDetectPointer := @DetectVGA256;
  33.   GraphDriver := InstallUserDriver('VGA256', AutoDetectPointer);
  34.     begin
  35.       AutoDetectPointer := @DetectVGA256;
  36.       GraphDriver := InstallUserDriver('VGA256',AutoDetectPointer);
  37.     end;
  38.     GraphDriver := Detect;
  39.     InitGraph(GraphDriver, Mode,'C:\TP\VGA256');
  40.  
  41.   Size := ImageSize(0,0,199,7);
  42.   GetMem(BPointer,Size);
  43.   SetPalBlack;
  44.   Read256PCX('FROGMEAT.PCX');
  45.   GetImage(119,170,318,177,BPointer^);
  46.   OutTextXY(119,170,'Fade in from black...');
  47.   FadeInPalBlack(15);
  48.   SavePal;
  49.   Delay(3000);
  50.   PutImage(119,170,BPointer^,NormalPut);
  51.   OutTextXY(119,170,'...and out to white! ');
  52.   FadeOutPalWhite(99);
  53.   PutImage(119,170,BPointer^,NormalPut);
  54.   OutTextXY(119,170,'Fade back from white!');
  55.   FadeInPalWhite(15);
  56.   Delay(3000);
  57.   PutImage(119,170,BPointer^,NormalPut);
  58.   OutTextXY(119,170,'Fade a color from... ');
  59.   Delay(3000);
  60.   PutImage(119,170,BPointer^,NormalPut);
  61.   OutTextXY(119,170,'... one to another...');
  62.   SaveColorFrom(05);
  63.   FadeColorTo(00,24);
  64.   Delay(3000);
  65.   PutImage(119,170,BPointer^,NormalPut);
  66.   OutTextXY(119,170,'... and back again!  ');
  67.   SColor[0] := 0;
  68.   SColor[1] := 0;
  69.   SColor[2] := 0;
  70.   FadeColorTo(00,24);
  71.   Delay(3000);
  72.   PutImage(119,170,BPointer^,NormalPut);
  73.   OutTextXY(119,170,'Fade out to black... ');
  74.   FadeOutPalBlack(99);
  75.   SetPalBlack;
  76.   Read256PCX('CPANEL.PCX');
  77.   GetImage(119,160,318,167,BPointer^);
  78.   OutTextXY(119,160,'...load a new file!  ');
  79.   FadeInPalBlack(15);
  80.   Delay(3000);
  81.   PutImage(119,160,BPointer^,NormalPut);
  82.   OutTextXY(119,160,'Switch two colors... ');
  83.   SwitchCol(0,12);
  84.   Delay(3000);
  85.   PutImage(119,160,BPointer^,NormalPut);
  86.   OutTextXY(119,160,'...back and forth!   ');
  87.   SwitchCol(0,12);
  88.   Delay(3000);
  89.   PutImage(119,160,BPointer^,NormalPut);
  90.   OutTextXY(119,160,'Scroll palette ahead.');
  91.   For X := 0 To 255 Do
  92.      Begin
  93.      CyclePalAhead;
  94.      End;
  95.   Delay(3000);
  96.   PutImage(119,160,BPointer^,NormalPut);
  97.   OutTextXY(119,160,'Scroll palette back! ');
  98.   For X := 0 To 255 Do
  99.      Begin
  100.      CyclePalBack;
  101.      End;
  102.   Delay(3000);
  103.   PutImage(119,160,BPointer^,NormalPut);
  104.   OutTextXY(119,160,'Scroll parts ahead...');
  105. For Y := 0 To 15 Do
  106.   Begin
  107.   For X := 0 To 15 Do
  108.      Begin
  109.      CycleColAhead(Y*16,Y*16+15);
  110.      End;
  111.   End;
  112.   Delay(3000);
  113.   PutImage(119,160,BPointer^,NormalPut);
  114.   OutTextXY(119,160,'and backwards!       ');
  115. For Y := 0 To 15 Do
  116.   Begin
  117.   For X := 0 To 15 Do
  118.      Begin
  119.      CycleColBack(Y*16,Y*16+15);
  120.      End;
  121.   End;
  122.   PutImage(119,160,BPointer^,NormalPut);
  123.   OutTextXY(119,160,'The End!!!           ');
  124.   Delay(3000);
  125.   FadeOutPalBlack(99);
  126.  
  127.   TextMode(LastMode);
  128. End.
  129.